var Utils= require('./Utils.js')
var utils_yys = require('./utils.yys.js')

var storage = storages.create('yys')
Utils.runTime(storage.get('ltp_runTime', 60))

sleep(5000)
Utils.init(true)

var yys_obj

yys_obj = utils_yys.getYysInfo()

var flag_one = flag_two = flag_three = true
var count = 0 // 计次

while(flag_one){
    for(let i=0; i<yys_obj.突破.寮.纵.length; i++){
        let x = random(yys_obj.突破.寮.横二.x1,yys_obj.突破.寮.横二.x2)
        let y = yys_obj.突破.寮.纵[i] + random(0,15)
        Tap(x,y)
        log('第'+(i+1)+'批次：'+x,y)
        sleep(random(1500,3000))
        /*************** 横向第一次进攻 start ***************/
        if(Utils.isContains(['组队','进攻'])){
            if(Utils.clickBaiduWord('进攻')){
                log('第 '+ ++count +' 次进攻')
                waitTimes(x,y)
                Utils.ranWaitTime(60, 70)
                while(flag_two){
                    Utils.ranWaitTime(10, 15)
                    for(let i=1; i<=random(3,5); i++){
                        utils_yys.isClick(yys_obj.突破.结界.左中间空白)
                        log('点击左中间空白：第' + i + '次')
                        Utils.sleeps()
                    }
                    if(Utils.isContains(['突破进度','击败次数','结界突破'])){
                        flag_two = false
                        let x = random(yys_obj.突破.寮.横一.x1,yys_obj.突破.寮.横一.x2)
                        let y = yys_obj.突破.寮.纵[i] + random(0,15)
                        Tap(x,y)
                        log('第'+(i+1)+'批次：'+x,y)
                        sleep(random(1500,3000))
                        /*************** 横向第二次进攻 start ***************/
                        if(Utils.isContains(['组队','进攻'])){
                            if(Utils.clickBaiduWord('进攻')){
                                log('第 '+ ++count +' 次进攻')
                                waitTimes(x,y)
                                Utils.ranWaitTime(60, 70)
                                while(flag_three){
                                    Utils.ranWaitTime(10, 15)
                                    for(let i=1; i<=random(3,5); i++){
                                        utils_yys.isClick(yys_obj.突破.结界.左中间空白)
                                        log('点击左中间空白：第' + i + '次')
                                        Utils.sleeps()
                                    }
                                    Utils.isContains(['突破进度','击败次数','结界突破'])? flag_three=false:''
                                }
                            }
                        }
                        /*************** 横向第二次进攻 end ***************/
                    }
                }
            }
            flag_two = flag_three = true
        }
        /*************** 横向第一次进攻 end ***************/
    }
    Swipe(random(320,800),100,random(320,800),480,1800)
    sleep(2500)
}

/**
 * @description 等待次数恢复
 */
function waitTimes(m,n){
    Utils.sleeps()
    if(Utils.isContains(['组队','进攻'])){
        for(let i=1; i<=2; i++){
            utils_yys.isClick(yys_obj.突破.结界.左中间空白)
            Utils.sleeps()
        }
        for(let i=1; i<=150; i++){
            sleep(1000)
            log('已等待恢复：' + i + '秒')
        }
        Tap(m,n)
        log(m,n)
        sleep(random(1500,3000))
        Utils.clickBaiduWord('进攻')
    }
}
